Drop GtkFunctionsListItemFactory
authorMatthias Clasen <mclasen@redhat.com>
Mon, 29 Jun 2020 20:36:46 +0000 (16:36 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 30 Jun 2020 02:10:34 +0000 (22:10 -0400)
It has been superseded by GtkSignalsListItemFactory.

gtk/gtk.h
gtk/gtkfunctionslistitemfactory.c [deleted file]
gtk/gtkfunctionslistitemfactory.h [deleted file]
gtk/meson.build

index f4c105e6e5221aa621a9c8c94bf7c2f28e70b6f8..ed85587d73e7f130fda9033bed43a14fcfa87ec8 100644 (file)
--- a/gtk/gtk.h
+++ b/gtk/gtk.h
 #include <gtk/gtkfontchooserdialog.h>
 #include <gtk/gtkfontchooserwidget.h>
 #include <gtk/gtkframe.h>
-#include <gtk/gtkfunctionslistitemfactory.h>
 #include <gtk/gtkgesture.h>
 #include <gtk/gtkgestureclick.h>
 #include <gtk/gtkgesturedrag.h>
diff --git a/gtk/gtkfunctionslistitemfactory.c b/gtk/gtkfunctionslistitemfactory.c
deleted file mode 100644 (file)
index e625331..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright © 2019 Benjamin Otte
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Authors: Benjamin Otte <otte@gnome.org>
- */
-
-#include "config.h"
-
-#include "gtkfunctionslistitemfactory.h"
-
-#include "gtklistitemfactoryprivate.h"
-#include "gtklistitemprivate.h"
-
-struct _GtkFunctionsListItemFactory
-{
-  GtkListItemFactory parent_instance;
-
-  GtkListItemSetupFunc setup_func;
-  GtkListItemBindFunc bind_func;
-  gpointer user_data;
-  GDestroyNotify user_destroy;
-};
-
-struct _GtkFunctionsListItemFactoryClass
-{
-  GtkListItemFactoryClass parent_class;
-};
-
-G_DEFINE_TYPE (GtkFunctionsListItemFactory, gtk_functions_list_item_factory, GTK_TYPE_LIST_ITEM_FACTORY)
-
-static void
-gtk_functions_list_item_factory_setup (GtkListItemFactory *factory,
-                                       GtkListItemWidget  *widget,
-                                       GtkListItem        *list_item)
-{
-  GtkFunctionsListItemFactory *self = GTK_FUNCTIONS_LIST_ITEM_FACTORY (factory);
-
-  if (self->setup_func)
-    self->setup_func (list_item, self->user_data);
-
-  GTK_LIST_ITEM_FACTORY_CLASS (gtk_functions_list_item_factory_parent_class)->setup (factory, widget, list_item);
-
-  if (gtk_list_item_get_item (list_item) != NULL && self->bind_func)  
-    self->bind_func (list_item, self->user_data);
-}
-
-static void                  
-gtk_functions_list_item_factory_update (GtkListItemFactory *factory,
-                                        GtkListItemWidget  *widget,
-                                        GtkListItem        *list_item,
-                                        guint               position,
-                                        gpointer            item,
-                                        gboolean            selected)
-{
-  GtkFunctionsListItemFactory *self = GTK_FUNCTIONS_LIST_ITEM_FACTORY (factory);
-
-  GTK_LIST_ITEM_FACTORY_CLASS (gtk_functions_list_item_factory_parent_class)->update (factory, widget, list_item, position, item, selected);
-
-  if (item != NULL && self->bind_func)  
-    self->bind_func (list_item, self->user_data);
-}
-
-static void
-gtk_functions_list_item_factory_finalize (GObject *object)
-{
-  GtkFunctionsListItemFactory *self = GTK_FUNCTIONS_LIST_ITEM_FACTORY (object);
-
-  if (self->user_destroy)
-    self->user_destroy (self->user_data);
-
-  G_OBJECT_CLASS (gtk_functions_list_item_factory_parent_class)->finalize (object);
-}
-
-static void
-gtk_functions_list_item_factory_class_init (GtkFunctionsListItemFactoryClass *klass)
-{
-  GObjectClass *object_class = G_OBJECT_CLASS (klass);
-  GtkListItemFactoryClass *factory_class = GTK_LIST_ITEM_FACTORY_CLASS (klass);
-
-  object_class->finalize = gtk_functions_list_item_factory_finalize;
-
-  factory_class->setup = gtk_functions_list_item_factory_setup;
-  factory_class->update = gtk_functions_list_item_factory_update;
-}
-
-static void
-gtk_functions_list_item_factory_init (GtkFunctionsListItemFactory *self)
-{
-}
-
-/**
- * gtk_functions_list_item_factory_new: (skip)
- * @setup_func: (scope call) (destroy user_destroy): the setup function for the list item factory
- * @bind_func: (scope call) (destroy user_destroy): the bind function for the list item factory
- * @user_data: user data for the @setup_func and @bind_func functions
- * @user_destroy: a function called to destroy @user_data
- *
- * Creates a new #GtkListItemFactory with the given functions.
- *
- * Returns: (transfer full): the newly created list item factory object
- */
-GtkListItemFactory *
-gtk_functions_list_item_factory_new (GtkListItemSetupFunc setup_func,
-                                     GtkListItemBindFunc  bind_func,
-                                     gpointer             user_data,
-                                     GDestroyNotify       user_destroy)
-{
-  GtkFunctionsListItemFactory *self;
-
-  g_return_val_if_fail (setup_func || bind_func, NULL);
-  g_return_val_if_fail (user_data != NULL || user_destroy == NULL, NULL);
-
-  self = g_object_new (GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY, NULL);
-
-  self->setup_func = setup_func;
-  self->bind_func = bind_func;
-  self->user_data = user_data;
-  self->user_destroy = user_destroy;
-
-  return GTK_LIST_ITEM_FACTORY (self);
-}
-
diff --git a/gtk/gtkfunctionslistitemfactory.h b/gtk/gtkfunctionslistitemfactory.h
deleted file mode 100644 (file)
index 116ef52..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright © 2019 Benjamin Otte
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Authors: Benjamin Otte <otte@gnome.org>
- */
-
-#ifndef __GTK_FUNCTIONS_LIST_ITEM_FACTORY_H__
-#define __GTK_FUNCTIONS_LIST_ITEM_FACTORY_H__
-
-#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
-#error "Only <gtk/gtk.h> can be included directly."
-#endif
-
-#include <gtk/gtklistitemfactory.h>
-#include <gtk/gtklistitem.h>
-
-G_BEGIN_DECLS
-
-#define GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY         (gtk_functions_list_item_factory_get_type ())
-#define GTK_FUNCTIONS_LIST_ITEM_FACTORY(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY, GtkFunctionsListItemFactory))
-#define GTK_FUNCTIONS_LIST_ITEM_FACTORY_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST ((k), GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY, GtkFunctionsListItemFactoryClass))
-#define GTK_IS_FUNCTIONS_LIST_ITEM_FACTORY(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY))
-#define GTK_IS_FUNCTIONS_LIST_ITEM_FACTORY_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY))
-#define GTK_FUNCTIONS_LIST_ITEM_FACTORY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GTK_TYPE_FUNCTIONS_LIST_ITEM_FACTORY, GtkFunctionsListItemFactoryClass))
-
-typedef struct _GtkFunctionsListItemFactory GtkFunctionsListItemFactory;
-typedef struct _GtkFunctionsListItemFactoryClass GtkFunctionsListItemFactoryClass;
-
-/**
- * GtkListItemSetupFunc:
- * @item: the #GtkListItem to set up
- * @user_data: (closure): user data
- *
- * Called whenever a new list item needs to be setup for managing a row in
- * the list.
- *
- * At this point, the list item is not bound yet, so gtk_list_item_get_item()
- * will return %NULL.
- * The list item will later be bound to an item via the #GtkListItemBindFunc.
- */
-typedef void (* GtkListItemSetupFunc) (GtkListItem *item, gpointer user_data);
-
-/**
- * GtkListItemBindFunc:
- * @item: the #GtkListItem to bind
- * @user_data: (closure): user data
- *
- * Binds a#GtkListItem previously set up via a #GtkListItemSetupFunc to
- * an @item.
- *
- * Rebinding a @item to different @items is supported as well as
- * unbinding it by setting @item to %NULL.
- */
-typedef void (* GtkListItemBindFunc) (GtkListItem *item,
-                                      gpointer   user_data);
-
-GDK_AVAILABLE_IN_ALL
-GType                   gtk_functions_list_item_factory_get_type (void) G_GNUC_CONST;
-
-GDK_AVAILABLE_IN_ALL
-GtkListItemFactory *    gtk_functions_list_item_factory_new     (GtkListItemSetupFunc    setup_func,
-                                                                 GtkListItemBindFunc     bind_func,
-                                                                 gpointer                user_data,
-                                                                 GDestroyNotify          user_destroy);
-
-
-G_END_DECLS
-
-#endif /* __GTK_FUNCTIONS_LIST_ITEM_FACTORY_H__ */
index 5a7ca5715f2691e50d18d70d4e9aca3e7772011b..22b274cba0f48ae224bd2cc467e93f802c955dd0 100644 (file)
@@ -253,7 +253,6 @@ gtk_public_sources = files([
   'gtkfontchooserutils.c',
   'gtkfontchooserwidget.c',
   'gtkframe.c',
-  'gtkfunctionslistitemfactory.c',
   'gtkgesture.c',
   'gtkgesturedrag.c',
   'gtkgesturelongpress.c',
@@ -537,7 +536,6 @@ gtk_public_headers = files([
   'gtkfontchooserdialog.h',
   'gtkfontchooserwidget.h',
   'gtkframe.h',
-  'gtkfunctionslistitemfactory.h',
   'gtkgesture.h',
   'gtkgesturedrag.h',
   'gtkgesturelongpress.h',